Beispiel: Bibliothek mit Bausteinen inkl. Hilfe-Dateien erstellen

Falls Sie eine eigene Bibliothek mit Bausteinen erstellen, wollen Sie möglicherweise auch eine externe HTML-Bausteinhilfe in die Bibliothek inkludieren. Falls sich der Anwender über den Baustein aus der Bibliothek informieren will, kann der Anwender somit die lokale HTML-Hilfe für den Baustein öffnen, um sich über den Baustein zu informieren. Bedingungen für das erfolgreiche Öffnen der Bausteinhilfe sind:

  1. das Erzeugen der externen Bausteinhilfe

  2. die Definition der Dateien für die externe Bausteinhilfen in der Bibliothekskonfiguration – mit Hilfe der Anweisung FILE := ...

  3. die korrekte Ablage dieser Hilfedateien in der Bibliothek – Diese korrekte Ablage wird durch das Schlüsselwort SOURCEPATH in der Bibliothekskonfiguration erreicht Siehe "Deklaration des Inhalts für die Bibliothek", falls Sie Informationen zu diesem Schlüsselwort benötigen.

Das folgende Beispiel einer Bibliothekskonfiguration illustriert die erforderliche Ablage der Dateien für die externe Bausteinhilfe.

Beispiel einer Bibliothekskonfiguration mit externer Bausteinhilfe

Das folgende Beispiel bewirkt, dass die erzeugte Bibliothek:

  • eine Bibliothek vom Typ LOGICAD ist (siehe "Eigene Bibliothek erstellen und bereitstellen" für die möglichen Bibliothekstypen)

  • eine Snapshot-Bibliothek ist (siehe "Snapshot-Bibliotheken und finalisierte Bibliotheken erstellen und verwenden" für Details)

  • den folgenden Inhalt enthält:

    • 2 Ordner – siehe die Anweisungen FOLDER ...

    • insgesamt 4 Bausteine – siehe die Anweisungen IEC := ...

    • Dateien für die externe Bausteinhilfe – siehe die Anweisungen FILE := ...,  die direkt nach den Anweisungen für die Bausteinen folgen

    • Binäries, Include und Source-Dateien – siehe die Anweisungen ab BINARY_LIBRARIES

LIBRARY com.CompanyA.Controller   (* The library is created with the name 'com.CompanyA.Controller__1.1.0-SNAPSHOT.zip'. *)
  VERSION := 1.1.0-SNAPSHOT;
  PACKAGETYPE := zip;
  FOLDER "Motors"   (* The library contains the folder 'Motors' and the sub-folder 'Testing'. Hence, the ZIP-file contains: FOLDER\Motors\Testing *)
    IEC := com.CompanyA.Controller.Motor1;  (* 'Motors" will contain the files 'com.CompanyA.Controller.Motor1' and 'com.CompanyA.Controller.Motor2'. *)
    IEC := com.CompanyA.Controller.Motor2;  
    FILE := ".olh\com.CompanyA.Controller.Motor1.EN.html", SOURCEPATH := "src/";     (* The files for the external block help for 'Motor1' and 'Motor2' - in English. *)
    FILE := ".olh\Motor1.png", SOURCEPATH := "src/";
    FILE := ".olh\com.CompanyA.Controller.Motor2.EN.html", SOURCEPATH := "src/";
    FILE := ".olh\Motor2.png", SOURCEPATH := "src/";
    FILE := ".olh\style.css", SOURCEPATH := "src/";
    FOLDER "Testing"                        (* 'Testing" will contain the files 'com.CompanyA.Controller.Test1' and 'com.CompanyA.Controller.Testr2'. *)
      IEC := com.CompanyA.Controller.Test1; 
      IEC := com.CompanyA.Controller.Test2;
      FILE := ".olh\com.CompanyA.Controller.Test1.EN.html", SOURCEPATH := "src/";     (* The files for the external block help for 'Test1' and 'Test2' - in English. *)
      FILE := ".olh\Test1.png", SOURCEPATH := "src/";
      FILE := ".olh\com.CompanyA.Controller.Test2.EN.html", SOURCEPATH := "src/";
      FILE := ".olh\Test2.png", SOURCEPATH := "src/";
      FILE := ".olh\style.css", SOURCEPATH := "src/";
    END_FOLDER
  END_FOLDER
  BINARY_LIBRARIES FOR BuiltInPlc    (* Moreover, the library will contain some binaries, include and source files as well. *)
    FILE := "libs\mathlib.lib";
  END_BINARY_LIBRARIES
  BINARY_OBJECTS FOR BuiltInPlc
    FILE := "libs\mathlib.o";
  END_BINARY_OBJECTS
  INCLUDES
    FILE := "h\mathlib.h";
  END_INCLUDES
  SOURCES
    FILE := "code.c" , SOURCEPATH := "c";
  END_SOURCES
END_LIBRARY

 

Details, warum die Dateien für die externe Bausteinhilfe so angegeben werden:

  • Jede Anweisung FILE := ... , die im obigen Beispiel einer der Anweisungen IEC := ... nachfolgt, nennt eine Datei für die externe Bausteinhilfe. Dies sind jene HTML-Dateien, PNG-Dateien und CSS-Dateien, die beim Erzeugen der externe Bausteinhilfe entstanden sind.

  • Diese Dateien wurden im Projekt in einem Ordner .olh erzeugt, der parallel zum Objekt mit dem Baustein liegt und standardmäßig nicht im Projektexplorer sichtbar ist.
    Beispiel: Liegt das Objekt mit dem Baustein im Ordner src des Projekts, wurden die Dateien im Ordner src\.olh des Projekts erzeugt. Wenn die Bibliothek erzeugt wird, sollen also die Dateien aus diesem Ordner src\.olh verwendet werden.

  • Die Dateien für die externe Bausteinhilfe dürfen in der erzeugten Bibliothek aber nicht im Ordner Motors\src\.olh abgelegt werden, sondern im Ordner Motors\.olh\ – Daher wird das Schlüsselwort SOURCEPATH mit dem zusätzlichen Pfad src verwendet. Nun wird die jeweilige Datei zwar im Ordner src\.olh des aktuellen Projekts gesucht, aber im Ordner .olh parallel zum Objekt mit dem Baustein in der Bibliothek abgelegt.

Gut zu wissen

(Graue Glühbirne) Wenn Sie die Anweisung FILE := "src\.olh\com.CompanyA.Controller.Motor1.DE.html"; verwenden, würde die HTML-Datei zwar im Ordner src\.olh\ des Projekts gesucht (und gefunden) werden, würde jedoch im Ordner Motors\src\.olh\ für die Bibliothek abgelegt werden. Da das Objekt mit dem Baustein im Ordner Motors liegt, würden die Dateien für die externe Bausteinhilfe nicht in einem Ordner .olh vorhanden sein, der parallel zum Objekt mit Baustein liegt. In Folge wäre das Öffnen der Bausteinhilfe nicht erfolgreich.